A Session Object Calculus for Structured Communication-Based Programming

نویسندگان

  • Dimitris Mostrous
  • Nobuko Yoshida
چکیده

We present an object calculus for structured concurrent programming, facilitating the implementation of typed binary protocols, known as sessions. Session types are based on a concept of duality of interactions, providing a powerful type-theoretic foundation for guaranteeing well-behaved parallel composition of communicating code. Our formalism extends the Abadi and Cardelli imperative object calculus with concurrency and typed queue-based primitives for asynchronous communication, each session consisting two queue end-points. It incorporates an iso-recursive formulation for recursive sessions for objects, naturally integrating session-based choices with method invocations. Linear objects enable mobile code to contain active sessions, while mobility of queue end-points realises higher-order session communication. The typing system of our session object calculus ensures type soundness, communication safety and the minimum typing property with respect to a new session subtyping relation for asynchrony in the presence of spawning, cloning and updating objects.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Reversible session-based pi-calculus

In this work, we incorporate reversibility into structured communication-based programming, to allow parties of a session to automatically undo, ina rollback fashion, the effect of previously executed interactions. This per-mits to take different computation paths along the same session, as wellas to revert the whole session and starting a new one. Our aim is to de-fine a th...

متن کامل

Session types in concurrent calculi : higher-order processes and objects

This dissertation investigates different formalisms, in the form of programming language calculi, that are aimed at providing a theoretical foundation for structured concurrent programming based on session types. The structure of a session type is essentially a process-algebraic style description of the behaviour of a single program identifier serving as a communication medium (and usually refe...

متن کامل

Session and Union Types for Object Oriented Programming

In network applications it is crucial to have a mechanism to guarantee that communications evolve correctly according to the agreed protocol. Session types offer a method for abstracting and validating structured communication sequences (sessions). In this paper we propose union types for refining and enhancing the flexibility of session types in the context of communication centred and object ...

متن کامل

Structured Global Programming for Communication Behaviour

This paper presents two different paradigms of description of communication behaviour, one focussing on global message flows and another on endpoint behaviours, as formal calculi based on session types. The global calculus originates from Choreography Description Language, a web service description language developed by W3C WS-CDL working group. The end-point calculus is a typed π-calculus. The...

متن کامل

Asynchronous Functional Session Types

Session types support a type-theoretic formulation of structured patterns of communication, so that the communication behaviour of agents in a distributed system can be verified by static type checking. Applications include network protocols, business processes, and operating system services. In this paper we define a multithreaded functional language with session types, which unifies, simplifi...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2008